import os
from tqdm import tqdm
'''参考此文档https://blog.csdn.net/zhengshiougea/article/details/103062720'''

def update_pip():
    '''升级函数'''
    #在控制台中执行命令,并有返回值,存入到变量r中
    r = os.popen("pip list --outdate")
    #读取r并自动换行
    r = r.read().splitlines()

    if len(r)>2:
        for update_list in tqdm(r[2:]):
            outdated_pkg = update_list.split(" ",1)[0]
            print(outdated_pkg)
            #执行这个指令,并有返回值
            tmp = os.popen('pip install --upgrade '+outdated_pkg)

            for nr in tmp.read().splitlines():
                print(nr)
    print("结束")

if __name__ == "__main__":
    update_pip()
